Portal och API

Om denna portal

Detta Àr en portal för utvecklare och IT-arkitekter som önskar anvÀnda API:er publicerade av SF Integrationsförvaltning. HÀr hittas publika API-specifikationer, men oftast inte sjÀlva API:et som sÄdant (det senare kallas hÀr API-instans/-implementation). Syftet med denna portal Àr att kunna hÀnvisa till API-specifikationer som ej Àr av kÀnslig karaktÀr. Andra typer av API:er publiceras internt, för Ätkomst till dessa behöver du ett konto och rÀtt Ätkomst. Kontakta SF Integrationsförvaltning genom Tellus och ange ditt syfte med att fÄ ett konto.

Om Integrationsförvaltningen

Integrationsförvaltningen Àr en del av Stockholms lÀns landsting och Àr en egen förvaltning som levererar olika typer av integrationstjÀnster. PrimÀr mÄlgrupp Àr olika vÄrdgivare och vÄrdproducenter samt företag och organisationer som stödjer vÄrdprocesser pÄ olika sÀtt. Integrationsförvaltningen hanterar Àven informationsutbyte mellan andra organisationer och verksamheter bÄde pÄ regional och nationell nivÄ.

API-specifikation och -instans

Ett API Àr ett programmeringsgrÀnssnitt för applikationer, som bÄde behöver beskrivas och implementeras. I detta konceptuella exempel, bestÄr ett API av tvÄ olika delar, en specifikation (beskriver anvÀndningen av ett API för bÄda mÀnniska och dator) och en eller flera instanser av det specificerade API:et.

Ett API kan ha i syfte att endast göra en specifik sak (ofta kallat mikrotjÀnst) eller Àr sÄ stort att det hanterar all informationsutbyte för en datamÀngd/ett system.

Det finns flera typer av API:er och flera typer av webbtjÀnster, men i detta fall hanteras det som kallas för REST-tjÀnster inom gruppen webbtjÀnster.

API-specifikationen Ă€r skriven i format som bĂ„de dator och mĂ€nniska kan förstĂ„. Detta göras primĂ€rt i specifikationsformaten RAML (1.0) och OpenAPI Specification (OAS 3.0). Även om specifikationerna gĂ„r att lĂ€sa i en vanlig texthanterare, sĂ„ kan det vara svĂ„rt att tyda och förstĂ„ i vissa lĂ€gen. DĂ€rför visas specifikationer, som Ă€r uppladdade i denna portal, upp för anvĂ€ndaren pĂ„ ett mer lĂ€ttförstĂ„eligt och intuitivt sĂ€tt. Portalen delar upp resurser i olika metoder och delar och gör det möjligt för anvĂ€ndaren att direkt kunna testa API:et via sĂ„ kallade "mockade endpoints". Det innebĂ€r att anvĂ€ndaren/utvecklaren kan testa implementationer av specifikationen med hjĂ€lp av exempeldata, utan att pĂ„ nĂ„got sĂ€tt kan pĂ„verka den vanliga driften, utan att nĂ„got system behöver finnas bakom test-ytan.

En specifikation behöver inte innehÄlla alla delar hos ett API, utan endast de delar som API-Àgaren önskar att konsumenten fÄr ta dela av. Detta gör det möjligt för ett bakomliggande system enbart exponera ett litet urval av informationsresurser mot omvÀrlden och API-instansen begrÀnsar konsumenten till att endast verka i den önskade miljön.

En specifikation kan bestÄ av flera olika delar som gÄr att ÄteranvÀnda mellan olika specifikationer, exempelvis ÄteranvÀndbara datatyper och egenskaper för en metod. Dessa kallas ofta "API-fragment".

API-specifikationen Àr sammanfattningsvis inte det faktiska API:et, utan snarare en beskrivning för hur interaktionen mot API:et ska ske och beskrivningen kan lÀsas av bÄde dator och mÀnniska. Vad som faktiskt hÀnder "inne i" eller bakom "API:et" behöver inte vara dokumenterat i API-specifikation, utan Àr troligare en del i en större systemdokumentation för systemet som exponerar API:et.

API-instans Àr instansiering av ett API och denna har en unik "endpoint" (punkt dÀr API svarar pÄ anrop, exempelvis https://mitt-api.exempel.regionstockholm.se/api/resurs/123). Det implementerade API:et ska bete sig enligt API-specifikationenm, sÄ att anropande system (konsumenten) har möjlighet att utbyta information med API:et. Design och framtagning av specifikationen utgör grunden vid framtagning API:et, utveckling enligt specifikationen och driftsÀttningen av det som utvecklats, blir en instans av API:et. Ett vanligt scenario för en API-instans Àr att det finns en endpoint för "mocktjÀnst-instans", test-instans och produktions-instans.

En API-instans hos Serviceförvaltningen Integration kan vara ett API som utvecklats av intern personal, men det kan Àven vara ett API i ett extern system eller en kombination av dessa. Utöver att enbart API:et instansieras, sÄ kan "policys" appliceras ovan pÄ API:et. En policy kan exempelvis vara en typ av behörighetsstyrning eller throttling (antal tillÄtna anrop per tidsintervall).

Ett API behöver inte ha en instans kopplat till denna portal för att finnas hÀr, utan kunder/system kan exponera sina publika API-specifikationer och sedan hantera API-instansen helt utanför denna plattform.

Publika eller privata API:er?

Publika API:er visas i denna publika portal. Det innebÀr att ett urval gjorts baserats pÄ flera olika aspekter, om en API-specifikation och -implementation ska vara tillgÀnglig för alla eller bara en begrÀnsad mÀngd. Bara för att en specifikation Àr publik, behöver inte det betyda att implementationen Àr det. För access till privata API:er samt vissa typer av publika implementationer, krÀvs ett konto med rÀtt behörighet i denna portal.

För frÄgor om anvÀndarkonton och access eller annan information om Integrationsförvaltningen och API:er, se VÄrdgivarguiden